Controls and Data Objects

For information about controls interacting with data objects via workflows, see Workflows and Data Objects.

A control can interact with a data object directly when bound to it. The way a control binds to data objects and the capabilities it has depends on the control type. The two types are described below.

Page binding

For most controls, you bind the web page to a single data object using the Layout Data properties like this:

Particular controls on the page can then be bound to columns in the data object. Common controls that may be bound in this way include: Text Box, Text Area, Combo Box, Label, DateTime Picker. You can also type a Default Value that will display until set by the data object or overwritten by user input.

This diagram shows four text boxes for data entry; each bound to a column in a data object.

Setting a control value from a data object

When another page redirects to the bound page and passes a SystemID that identifies a row in the data object, then, as the page loads, any controls that are bound to data object columns take their values from their respective data object columns.

The data type of the data object column bound to a control must be compatible with the control's data type; for example, a number box expects a number, and a data object DATETIME field expects a datetime format and so on.

Typically, the originating page will feature a Data List or Grid control; the user selects a row in the data list or grid and the page redirects to a landing page that is bound to the data object, passing the SystemID of the selected row.

Saving a control value to a data object

The current data object SystemID identifies which data object row will be updated with the values of bound controls when a page Save is executed. If no SystemID is set, a new row is added to the data object. The SystemID may be set by another control in the page, or more usually, a redirecting page, or by calling the FSI JavaScript API method fsi.setDataKey() (see FSI API: Data Objects).

Data list and other controls

Some controls with more complex behaviour specify both the data object and one or more columns to bind to; these types include data lists, grids, charts, and combo boxes. These controls display values from multiple rows in the bound data object whenever the page loads, unlike the simpler classes described in Page Binding above which display data from the single row, specified by SystemID.

For more information, refer to the Controls Reference section here: Introduction to Controls.